<?php
/*
 * @author eBIZ Team <dev@jungo.com.cn>
 * @copyright  Copyright (c) , ShenZhen JunGO Technology Co., Ltd. All rights reserved.
 * @license  Commercial authorization, unauthorized use and modification are prohibited
 * @url www.jungo.com.cn
 */

namespace ckeeper\entity;



class ManagerRightsEntity
{

    public int $id;

    public int $pid;

    public string $idtree;

    public string $name;

    public string $route;

    public string $key;

    public string $type = 'read';

    public int $sort = 1000;

    public int $verify = 0;

    public string $create_time;

    /**
     * @return int
     */
    public function getId(): int
    {
        return $this->id;
    }

    /**
     * @param int $id
     * @return ManagerRightsEntity
     */
    public function setId(int $id): ManagerRightsEntity
    {
        $this->id = $id;
        return $this;
    }

    /**
     * @return int
     */
    public function getPid(): int
    {
        return $this->pid;
    }

    /**
     * @param int $pid
     * @return ManagerRightsEntity
     */
    public function setPid(int $pid): ManagerRightsEntity
    {
        $this->pid = $pid;
        return $this;
    }

    /**
     * @return string
     */
    public function getIdtree(): string
    {
        return $this->idtree;
    }

    /**
     * @param string $idtree
     * @return ManagerRightsEntity
     */
    public function setIdtree(string $idtree): ManagerRightsEntity
    {
        $this->idtree = $idtree;
        return $this;
    }

    /**
     * @return string
     */
    public function getName(): string
    {
        return $this->name;
    }

    /**
     * @param string $name
     * @return ManagerRightsEntity
     */
    public function setName(string $name): ManagerRightsEntity
    {
        $this->name = $name;
        return $this;
    }

    /**
     * @return string
     */
    public function getRoute(): string
    {
        return $this->route;
    }

    /**
     * @param string $route
     * @return ManagerRightsEntity
     */
    public function setRoute(string $route): ManagerRightsEntity
    {
        $this->route = $route;
        return $this;
    }

    /**
     * @return string
     */
    public function getKey(): string
    {
        return $this->key;
    }

    /**
     * @param string $key
     * @return ManagerRightsEntity
     */
    public function setKey(string $key): ManagerRightsEntity
    {
        $this->key = $key;
        return $this;
    }

    /**
     * @return string
     */
    public function getCreateTime(): string
    {
        return $this->create_time;
    }

    /**
     * @param string $create_time
     * @return ManagerRightsEntity
     */
    public function setCreateTime(string $create_time): ManagerRightsEntity
    {
        $this->create_time = $create_time;
        return $this;
    }

    /**
     * @return string
     */
    public function getType(): string
    {
        return $this->type;
    }

    /**
     * @param string $type
     * @return ManagerRightsEntity
     */
    public function setType(string $type): ManagerRightsEntity
    {
        $this->type = $type;
        return $this;
    }

    /**
     * @return int
     */
    public function getSort(): int
    {
        return $this->sort;
    }

    /**
     * @param int $sort
     * @return ManagerRightsEntity
     */
    public function setSort(int $sort): ManagerRightsEntity
    {
        $this->sort = $sort;
        return $this;
    }

    /**
     * @return int
     */
    public function getVerify(): int
    {
        return $this->verify;
    }

    /**
     * @param int|bool $verify
     * @return ManagerRightsEntity
     */
    public function setVerify(int|bool $verify): ManagerRightsEntity
    {
        $this->verify = $verify ? 1 : 0;
        return $this;
    }

}
